package com.imyuanma.qingyun.lowcode.dao;

import com.imyuanma.qingyun.common.model.PageQuery;
import com.imyuanma.qingyun.lowcode.model.data.CodeOnlineSqlDO;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;
import java.util.Map;

/**
 * 代码在线服务
 *
 * @author wangjy
 * @date 2022/07/01 22:41:01
 */
@Mapper
public interface ILcpCodeOnlineDao {
    /**
     * 分页查询
     *
     * @param codeOnlineSqlDO 查询条件
     * @param rowBounds       分页参数
     * @return
     */
    List<Map<String, Object>> getList(CodeOnlineSqlDO codeOnlineSqlDO, PageQuery rowBounds);

    /**
     * 列表查询
     * @param codeOnlineSqlDO 查询条件
     * @return
     */
    List<Map<String, Object>> getList(CodeOnlineSqlDO codeOnlineSqlDO);

    /**
     * 主键查询
     *
     * @param codeOnlineSqlDO 参数
     * @return
     */
    Map<String, Object> get(CodeOnlineSqlDO codeOnlineSqlDO);

    /**
     * 选择性插入
     *
     * @param codeOnlineSqlDO 参数
     * @return
     */
    int insertSelective(CodeOnlineSqlDO codeOnlineSqlDO);

    /**
     * 选择性修改
     *
     * @param codeOnlineSqlDO 参数
     * @return
     */
    int updateSelective(CodeOnlineSqlDO codeOnlineSqlDO);

    /**
     * 删除
     *
     * @param codeOnlineSqlDO 参数
     * @return
     */
    int delete(CodeOnlineSqlDO codeOnlineSqlDO);

    /**
     * 批量删除
     *
     * @param codeOnlineSqlDO 参数
     * @return
     */
    int batchDelete(CodeOnlineSqlDO codeOnlineSqlDO);
}
